<?php
require_once 'BaseController.php';

/**
 * 通勤・通学時間検索クラス<br />
 *
 * @package apamanshop
 * @author　
 * @copyright　
 */
class Search_TsukintsugakujikansearchController extends Search_BaseController
{
	public function indexAction()
	{
		$this->setMainTemplate('cms_search.tpl');
		/*
		 * 基本情報設定
		 */
		if (Apm_Config_Search::RENEW_2012) {
			$this->_display_path = APPLICATION_PATH . '/modules/search/views/scripts/search_new.tpl';
			$this->_newTemplate = true;
			$this->_import_seo_search = true;
			// テンプレート変更
			$this->_tsukintsugaku_jikan_helper = $this->getApmHelper('seltsukintusgaku_jikan_new.tpl');
			$this->_ensen_helper               = $this->getApmHelper('selensen_new.tpl');
			// JavaScript
			$this->addMetaJs('/common_new/js/import.js');
			$this->addMetaJs('/app/js/search/Seltsukintugakujikan.js');
			// CSS
			$this->addMetaCss('/common_new/css/sub02.css',array('type' => 'text/css','media' => 'all'));
		} else {
			$this->_display_path = APPLICATION_PATH . '/modules/search/views/scripts/search.tpl';
			//CSSの定義（デザイン）
			$this->addMetaCss('/css/search/search.css',array('type' => 'text/css','media' => 'all'));
			//JavaSriptの定義（アプリ）
			$this->addMetaJs('/app/js/search/Seltsukintugakujikan.js');
			$this->addMetaJs('/app/js/search/Selensen.js');
		}

		// 単一選択用フラグ
		$this->_data['SelFlag'] = 2;
		// 駅名選択なし
		$this->_data['SelEkiNull'] = 1;

		// グローバルナビから遷移してきた場合
		if ($this->isGlobalNavi())
		{
			Apm_Util_GlobalNavi_Common::transitionJudge(Apm_Config_Search::SRHKBN_TUKINTUGAKU);
		}

		// 検索区分
		$this->setSearchKbn(Apm_Config_Search::SRHKBN_TUKINTUGAKU, "tsukintsugakujikansearch");

		// 再検索内容セット
		$this->_data["TgtStNm"]          = $this->_params['ReTgtStNm'];
		$this->_data["EndRangeTimeFrom"] = $this->_params['ReEndRangeTimeFrom'];
		$this->_data["EndRangeTimeTo"]   = $this->_params['ReEndRangeTimeTo'];
		$this->_data["TransferCount"]    = $this->_params['ReTransferCount'];

		// パラメータに駅名が含まれる場合
		if($this->_model_common->returnValue($this->_params,"TgtStNm") <> ""){

			$this->_model_tsukintsugaku = new Search_Model_Seltsukintsugakujikan();

			$response = $this->_model_tsukintsugaku->getTargetStation($this->_params);

			// 該当駅なし
			if( $response[1]== 0 ){

				if ($this->_newTemplate) {
					// ブロックタイトル
					$this->_data['block_title'] = '*通勤・通学時間から賃貸情報を検索';
				} else {
				}
				// メインブロック
				$this->_data['err_msg'] = "※該当する駅が見つかりません。";
				// 選択済みパラメータ格納
				$this->_data['TgtStNm'] = $this->_params['TgtStNm'];
				$this->_data["EndRangeTimeFrom"]= $this->_params["EndRangeTimeFrom"];
				$this->_data["EndRangeTimeTo"]	= $this->_params["EndRangeTimeTo"];
				$this->_data["TransferCount"]	= $this->_params["TransferCount"];
				// パラメータ削除
				unset($this->_params['TgtStNm']);
				unset($this->_params['EndRangeTimeFrom']);
				unset($this->_params['EndRangeTimeTo']);
				unset($this->_params['TransferCount']);
				$this->_main_helper = $this->_tsukintsugaku_jikan_helper;

			// 複数駅
			}else if( $response[0]== 1 ){

				if ($this->_newTemplate) {
					// ブロックタイトル
					$this->_data['block_title'] = '*通勤・通学時間から賃貸情報を検索';
				} else {
					// H1のタイトル
					$this->_data['h1_title'] = '複数駅から選択してください。';
				}

				// 候補駅名データのみを詰める
				$this->_data["TgtStNms"] = array_slice($response, 2, $response[1]);

				// 選択済みパラメータ格納
				$this->_data["EndRangeTimeFrom"]= $this->_params["EndRangeTimeFrom"];
				$this->_data["EndRangeTimeTo"]	= $this->_params["EndRangeTimeTo"];
				$this->_data["TransferCount"]	= $this->_params["TransferCount"];

				// メインブロック
				$this->_main_helper = $this->_tsukintsugaku_jikan_helper;

			// 単一駅
			}else if( $response[0]== 2 ){
				// 対象駅決定後再度データ取得
				$this->_params['SelStKbn'] = "1";
				$response = $this->_model_tsukintsugaku->getTargetStation($this->_params);

				// 集計対象駅データをT94COMMUTING_EKI_T03SUMへインサート
				$this->_model_tsukintsugaku->insertEkiT94($this->_params,$response);

				if ($this->_newTemplate) {
					// ブロックタイトル
					$this->_data['block_title'] = '*沿線を選択してください';
					$this->addMetaCss('/common_new/css/sub.css',array('type' => 'text/css','media' => 'all'));
				} else {
					// H1のタイトル
					$this->_data['h1_title'] = '沿線を選択してください。';
				}

				// ターゲット駅コードを取得し、hiddenタグにうめる
				$params = array();
				$params['TargetEkiCd'] = substr($response[2], 0, 5);
				$this->_data['hiddenTag'] .= Apm_Util::generateHiddenTag($params);
				$this->_params['TargetEkiCd'] = $params['TargetEkiCd'];


				// 沿線データ取得
				$this->_data['selensen'] = array();
				$this->_data['selensen'] = $this->_model_tsukintsugaku->getEnsenData($this->_params,$response);

				// 表示用データに変換
				$this->_model_ensen = new Search_Model_Selensen();
				$this->_model_ensen->convertEnsenData($this->_data);

				// メインブロック
				$this->_main_helper = $this->_ensen_helper;

			}

		}else{
			if ($this->_newTemplate) {
				// ブロックタイトル
				$this->_data['block_title'] = '*通勤・通学時間から賃貸情報を検索';
			} else {
				// H1のタイトル
				$this->_data['h1_title'] = '駅名を入力して時間を選択してください。';
			}
			// メインブロック
			$this->_main_helper = $this->_tsukintsugaku_jikan_helper;
		}

	}
}
?>